#ifndef FUND_H
#define FUND_H

#include <string>
#include <cstring>
#include <vector>


//TA数据结构
typedef struct TA {
	std::string name;
	std::string code;
} Ta;

//PARSE数据结构
typedef struct PARSE {
	std::string parse_id;
	std::string parse_name;
	int xy_sh_date;
	int xy_fh_date;
	int index;
} Parse;

//FUND数据结构
typedef struct FUND {
	char fund_name[40];
	char fund_code[30];
	char ta_code[6];
	char parse_id[10];
	int otc_sh_date;
	int otc_fh_date;
}Fund;


//检查基金TA匹配
typedef struct TAINFO
{
	std::string ta;
	std::string name;
}TaInfo;


/********************TA函数*************************/
std::string getFullTaName(const Ta * ta);
bool isTaBig(const Ta & one,const Ta & two);


/********************PARSE函数**********************/
int getOtcShDate(const Parse * parse);
int getOtcFhDate(const Parse * parse);
bool isParseBig(const Parse & one,const Parse & two);

/********************FUND函数**********************/

bool isFundEqual(const Fund * one,const Fund * two);
bool fundCheck(const std::string & code,const std::string  & name, const std::vector<TaInfo> & info);
void initCheckTaInfo(const std::string & file, std::vector<TaInfo> & info);  //TA检查信息初始化
void initParse(const std::string & file, std::vector<Parse> & parse);	//基金参数初始化
void initTaInfo(const std::string & file, std::vector<Ta> & info );		//TA信息初始化


#endif
